package com.home_school_platform.dao;

import com.home_school_platform.entity.pojo.School;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 *
 * @authoor Bilysen
 * @date 2021/3/11 - 22:06
 **/
@Repository
@Mapper
public interface SchoolDao {

    /**
     * 添加学校
     * @return 影响的行数
     */
    int insertSchool(School school);

    /**
     * 根据学校主键删除学校
     * @param id
     * @return
     */
    int deleteSchool(Integer id);

    /**
     * 根据学校主键更新学校
     * @param school
     * @return
     */
    int updateSchool(School school);

    /**
     *根据主键得到学校
     * @return School 对象
     */
    School getSchool(Integer id);

    /**
     * 分页查询所注册的学校
     * @param currentPage 当前页数
     * @param pageSize 每个页面的大小
     * @return list
     */
    List<School> listSchool(@Param("currentPage") Integer currentPage,
                            @Param("pageSize") Integer pageSize);

    /**
     * 统计总共有多少个学校
     * @return 总数
     */
    Integer countListSchool();

    List<School> listSchoolLikeSchoolName(@Param("schoolName") String schoolName,
                                          @Param("currentPage") Integer currentPage,
                                          @Param("pageSize") Integer pageSize);

    Integer countListSchoolLikeSchoolName(@Param("schoolName") String schoolName);
}
